Network content browser applications (also referred to simply as “browsers”) obtain and display network content, such as content pages and other network-accessible files. Content pages typically include multiple visual elements, such as text, images, videos, interactive controls, and the like. The visual representation of any or all of the elements may change after the content page is initially displayed. For example, text may dynamically change in response to user-initiated events, video or animations may progress frame-by-frame, users may enter information into and otherwise interact with various controls, and so on. In response to determining that a visible change is to be applied to an element, the browser can re-draw the content page to the display of the user device to reflect the desired visible change to the element.
Some browser applications reduce the time and computing resources required to update the display of content page by dividing the content page into portions that can be independently updated. For example, a browser may divide a content page into a plurality of rectangular tiles, each of which corresponds to a different portion of the visible content page. As user interactions, animations, script executions, and other types of events cause the appearance of individual elements on the content page to change, the tile or tiles on which the elements are displayed become “damaged.” Rather than updating the entire display, the browser may only update the damaged tiles. For example, if a device can display 100 tiles at a given time, and an element with a pending visual change is displayed on only three of those tiles, the browser only needs to re-draw the three tiles that include some portion of the element. Thus, the browser can avoid re-drawing 97 out of 100 tiles while still ensuring that the display of the content page is updated.